#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>


int main()
{
    long n, k = 0;
    long count = 0;
    while (~scanf("%ld %ld", &n, &k))
    {
        if (k == 0)
        {
            printf("%ld\n", n * n);
            continue;
        }
        for (long j = k + 1; j <= n; j++)
        {
            long help = n % j < k ? 0 : (n % j) - k + 1;
            count += (j - k) * (n / j) + help;
        }
        printf("%ld\n", count);
    }
    return 0;
}


//int main()
//{
//    int n = 0, k = 0;
//    scanf("%d %d", &n, &k);
//
//    int ans = 0;
//    for (int i = k; i <= n; i++)
//    {
//        for (int j = k; j <= n; j++)
//        {
//            if (i % j >= k)
//            {
//                ans++;
//            }
//        }
//    }
//
//    printf("%d", ans);
//    return 0;
//}

//
//int main()
//{
//    char str[1000];
//    gets(str);
//
//    int n = 0;
//    scanf("%d", &n);
//
//    char arr[1000];
//    for (int i = 0; i < n; i++)
//    {
//        arr[i] = str[i];
//    }
//    arr[n] = '\0';
//
//    printf("%s", arr);
//    return 0;
//}